﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using BUSService;
using DTOService;

namespace QuanLyBangDia
{
    public partial class frmQuanLyLoaiBangDia : Form
    {
        MyService myService = new MyService();

        public frmQuanLyLoaiBangDia()
        {
            InitializeComponent();
            this.Icon = QuanLyBangDia.Properties.Resources.HDD;
            gv.Columns.Add("MaLBD", "Mã Loại");
            gv.Columns.Add("TenLBD", "Tên Loại");
        }

        private void frmQuanLyLoaiBangDia_FormClosing(object sender, FormClosingEventArgs e)
        {
            this.DialogResult = DialogResult.OK;
        }

        private void frmQuanLyLoaiBangDia_Load(object sender, EventArgs e)
        {
            LoaiBangDia[] ls = myService.SelectLoaiBangDia();
            object[] temp;
            foreach (LoaiBangDia v in ls)
            {
                temp = new object[] { v.MaLoaiBangDia,v.TenLoaiBangDia };
                gv.Rows.Add(temp);
            }
            gv.Show();
        }

        private void gv_SelectionChanged(object sender, EventArgs e)
        {
            try
            {
                DataGridViewRow currRow = gv.CurrentRow;
                txtMaLBD.Text = currRow.Cells[0].Value.ToString();
                txtTenLBD.Text = currRow.Cells[1].Value.ToString();
            }
            catch
            {
            }
        }

        private void btnThem_Click(object sender, EventArgs e)
        {
            if (txtTenLBD.Text == "")
            {
                MessageBox.Show("Nhập tên loại băng đĩa !", "Thông báo");
                txtTenLBD.Focus();
                return;
            }
            LoaiBangDia parr = new LoaiBangDia();
            parr.TenLoaiBangDia = txtTenLBD.Text;
            int id = myService.InsertLoaiBangDia(parr);
            if (id > 0)
            {
                object[] temp = new object[] { id,parr.TenLoaiBangDia };
                gv.Rows.Add(temp);
                gv.Show();
                MessageBox.Show("Thêm thành công !", "Thông báo");
            }
            else
                MessageBox.Show("Thêm thất bại !", "Thông báo");
        }

        private void btnCapNhat_Click(object sender, EventArgs e)
        {
            if (txtTenLBD.Text == "")
            {
                MessageBox.Show("Nhập tên loại băng đĩa !", "Thông báo");
                txtTenLBD.Focus();
                return;
            }
            LoaiBangDia parr =new LoaiBangDia();
            parr.MaLoaiBangDia = int.Parse(txtMaLBD.Text);
            parr.TenLoaiBangDia = txtTenLBD.Text;
            if (myService.UpdateLoaiBangDia(parr) > 0)
            {
                gv.Rows.Clear();
                frmQuanLyLoaiBangDia_Load(sender, e);
                MessageBox.Show("Cập nhật thành công !", "Thông báo");
            }
            else
                MessageBox.Show("Cập nhật thất bại !", "Thông báo");
        }

        private void btnXoa_Click(object sender, EventArgs e)
        {
            try
            {
                DialogResult diag = MessageBox.Show("Bạn có chắc chắn muốn xóa loại băng đĩa này không ?", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2);
                if (diag == DialogResult.Yes)
                {
                    DataGridViewRow currRow = gv.CurrentRow;
                    LoaiBangDia parr = new LoaiBangDia();
                    parr.MaLoaiBangDia = int.Parse(currRow.Cells[0].Value.ToString());
                    if (myService.DeleteLoaiBangDia(parr) > 0)
                    {
                        gv.Rows.Remove(gv.CurrentRow);
                        gv.Show();
                        MessageBox.Show("Xóa thành công !", "Thông Báo");
                    }
                    else
                        MessageBox.Show("Xóa thất bại !", "Thông Báo");
                }
            }
            catch
            {
            }
        }
    }
}
